The present invention relates to a vehicle communication control apparatus that controls communication between on-vehicle electronic control units and a diagnostic apparatus that reads the diagnostic data stored in the electronic control units. More particularly, the present invention pertains to a communication control apparatus for a vehicle provided with electronic control units connected to one another by a communication network.
Electronic control has become widely used in vehicles such as automobiles. There are various electronic control units (hereafter referred to as ECU) used in an automobile. For example, there is an ECU used for controlling the fuel injection, an ECU used for controlling the transmission and an ECU used for controlling the anti-lock brake system. Each ECU sends a command signal to the corresponding device and controls the device in an optimum manner. A self-diagnosing function is provided for each ECU. When an abnormality is detected while controlling the corresponding device, diagnostic data indicating such abnormality is stored in the ECU.
Accordingly, when there is a malfunction in an automobile, the malfunction may be identified by connecting an external vehicle diagnostic apparatus to a communication port provided in each ECU. The diagnostic apparatus is used to determine whether each ECU is functioning normally when the assembled automobile leaves the factory.
However, the number of ECUs used in automobiles is increasing in accordance with the rapid progress in electronic control. This has complicated the diagnosis of ECUs.
To simplify the diagnosis, the ECUs may be connected to one another with a data bus to form a communication network. This enables intercommunication among the ECUs. Thus, the data stored in each ECU may be used by other ECUs. This allows further progress in vehicle control technology.
Japanese Unexamined Patent Publication No.2-73130 describes a communication network that interconnects ECUs so that an external vehicle diagnostic apparatus may read the diagnostic data stored in each ECU through the network. A communication connector of the diagnostic apparatus is connected to a communication port provided on the network. This facilitates the reading of the diagnostic data stored in each ECU.
Vehicle diagnostic systems have a set of standards specified by the International Standardization Organization (ISO). Accordingly, it is preferable that vehicle diagnostic systems be constructed in accordance with the associated ISO standard. However, a vehicle diagnostic system according to the ISO standard raises the following problem, which is described in reference to FIGS. 5 and 6.
FIG. 5 is a flowchart showing an example of communication procedures ("one of Plural N" communication) based on a prior art system. FIG. 6 is a timing chart showing communication timing among an external vehicle diagnostic apparatus, an ECU 50 and another ECU 51.
The ECUs 50, 51 are connected to each other by a communication cable, and the ECUs 50, 51 communicate with each other. According to ISO14230 and J2190 by the Society of Automotive Engineers (SAE), the ECUs 50, 51 are expected to positively respond to a request signal sent by the diagnostic apparatus or the other ECU within a predetermined time period. ISO14230 and SAE J2190 recommend also that the ECUs 50, 51 send negative response signals when unable to respond within the predetermined time period.
The flowchart of FIG. 5 describes a program executed by each ECU 50, 51. Referring to FIG. 5, each ECU receives a request signal sent by the diagnostic apparatus at Step 101.
At Step 102, each ECU judges whether a predetermined idle time P2 has elapsed after receiving the request signal (0 msec&lt;P2&lt;50 msec). Suppose the idle time P2 for the ECU 50 is 24 msec, and the idle time P2 for the ECU 51 is 32 msec. If the judgment at Step 102 is NO, each ECU waits until the idle time P2 has elapsed. If the judgment at Step 102 is YES, which means the idle time P2 has elapsed, each ECU judges whether it is ready to send a positive response signal to the diagnostic apparatus at Step 103.
At Step 104, the ECU sends a negative response signal to the diagnostic apparatus when not ready to send a response signal to the diagnostic apparatus.
When ready, the ECU sends the positive response signal to the diagnostic apparatus at Step 105. At Step 106, the ECU judges whether the other ECU is in communication with the diagnostic apparatus. If so, the ECU goes on to Step 102 and if not, goes on to Step 101.
When, for example, the ECU 50 cannot send a positive response signal when the idle time P2 has elapsed after receiving a request signal from the diagnostic apparatus, the ECU 50 sends a negative response signal to the diagnostic apparatus. As FIG. 6 shows, the ECU 50 keeps sending the negative response signal until it can send a positive response signal. The other ECU 51 is forbidden to respond while the ECU 50 is sending the negative response signal. Because of this, the other ECU 51 may not be able to reply to the diagnostic apparatus for a long time until the ECU is ready to send a positive response signal. This prevents smooth communication among the ECUs 50, 51 and the diagnostic apparatus.